<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>正则表达式</title>

</head>
<body>
	<script type="text/javascript">
 //    var num="goods";
	// var val=num.replace('goods',"wyw ");
	// document.write(val);

// var reg=/\bis\b/g;//字面量
// var reg=new RegExp("\\bis\\b",'g');//构造函数


// "this is a boy ,not a girl".replace(/is/,'IS');
// "this is a boy ,not a girl".replace(/is/g,'IS');//g全局
// "this is a boy ,not a girl".replace(/\bis\b/gi,'IS');b单词边界,识别单词

//修饰符：g 全局,i不分大小写,m多行搜索
// 元字符：\t, \v,\n,\r,\o,\f, . 表示任意字符;
// 字符类 /[0-9a-z]/g 闭区间
// 字符类取反 /[^0-9]/除了0-9;
// ^在字符类中表示取反
//其他表示开头$表示结尾
// 空白符\s 
// 去除空白符
// var str="s dd  ww ";
// str.replace(/\s/g,"");
// 

// 量词 ？出现零次或一次. +至少出现一次. *任意次. {n}出现n次. {n-m}出现n-m次.{n,}至少n次或n次以上.
// 
// 贪婪模式\d{2,5}按最大的(5)去匹配，非贪婪模式\d{2,5}? 按小的去匹配
// 分组:(goods){3}-按goodsgoodsgoods进行匹配;
//.....................................................
//电话号码:
 // var reg =/^1[3578]\d\d\d\d\d\d\d\$/;
 // var val= "131335632".replace(reg,"@"); 
 // 		alert(val);
 //日期:
// var reg=/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/;
// var val="2017-03-22".replace(reg,"$2-$3-$1");//通过分组可以实现$,在分组中加入?:可以忽略分组
// 			alert(val);
//匹配字母开头，5-16字符，字母数字下划线：
// var reg=/^[a-zA-Z].{5,16}\w/;
// var val="abc_221".replace(reg,"@");
//   			alert(val);	

//................................................
//前瞻:?=正向和负向?！
		// var reg=/(xiaohei)(?xionghong)/;
		//       var val="xiaohongxiaohei".replace(reg,"@");
		//       alert(val); 
//通过正则来获取姓名	
	// var	a="images/王勇武.jpg";
	//  var reg=/^images\/(.{2,})\.(jpg|png)$/;
	// 	var val=a.replace(reg,"$1")
	// 	alert(val);
//reg.test();用于测试字符串参数中是否存在匹配正则表达式的字符串
	// var reg=/^1[2324]\d{9}$/;
	//     var a=reg .test("247812482174812");
	//     alert(a);
//..........................................   
//reg.exec();对字符串进行搜索.
    // var reg=/\d/g;
    // var arr=reg.exec("hwe3we2es");
    // var a=arr.index;
    // alert(a);
//获取字符串的信息
 // var reg=/\d/g;
 // var arr;
 // while((arr=reg.exec("w1nmn4nj5mm3mms7w"))!=null){
 // 	document.write("匹配到的字符="+arr+",匹配到的字符的下标"+arr.index+",当前匹配的字符串的下一个位置"+reg.lastIndex+"</br>");

 // }
 //..................................................
 //search 
 // var reg=/\d/;
 // var s="sjs2sj".search(reg);
 // alert(s);
 //......................................................
 //replace+function函数的结合
// var str="goods in goodsList".replace(/goods/g,"boys");
// 		alert(str);

// var str="s1fd2fd3f4g5f";
// var reg=/(\d)([a-z])/g;
// var value =str.replace(reg,box)
// alert(value);

// function box(str,g1,g2,index,val){//参数个数取决于分组的多少
// 		return parseInt(g1)+1+g2;//决定替换内容
// }

</script>
</body>
</html>